### 导入组件，只处理需要处理的，不需要处理的什么也不做
#define importComponent(col)
    #switch(col.formElement)
    #case("input", "text")
    ### do nothing, 暂时没有导入的，做个例子
    #default
    #end
#end
### 渲染表单，只处理需要处理的，不需要处理的什么也不做
#define renderFormItem(col, formModel)
    #switch(col.formElement)
    #case("input", "text")
        <NFormItem label="#(col.comment)" path="#(col.name)">
          <NInput v-model:value="#(formModel).#(col.name)" placeholder="#(col.comment)" />
        </NFormItem>
    #case("textarea")
        <NFormItem label="#(col.comment)" path="#(col.name)">
          <NInput v-model:value="#(formModel).#(col.name)" placeholder="#(col.comment)" />
        </NFormItem>
    #case("checkbox")
        <NFormItem label="#(col.comment)" path="#(col.name)">
          <PorDictCheckbox v-model:value="#(formModel).#(col.name)" dict-code="#(col.getValue('formSourceValue'))" #if(col.numberType)value-to-number#end></PorDictCheckbox>
        </NFormItem>
    #case("radio")
        <NFormItem label="#(col.comment)" path="#(col.name)">
          <PorDictRadio v-model:value="#(formModel).#(col.name)" dict-code="#(col.getValue('formSourceValue'))" #if(col.numberType)value-to-number#end></PorDictRadio>
        </NFormItem>
    #case("select")

    #case("editor")
        <NFormItem label="#(col.comment)" path="#(col.name)">
          <PorDictRadio v-model:value="#(formModel).#(col.name)" dict-code="#(col.getValue('formSourceValue'))" #if(col.numberType)value-to-number#end></PorDictRadio>
        </NFormItem>
    #case("date","datetime-local", "datetime")
    #case("image","imageUpload")
    #default
    #end
#end
### 渲染检索表单，只处理需要处理的，不需要处理的什么也不做
#define renderSearchItem(col, formModel)
    #switch(col.formElement)
    #case("input", "text")
            <NFormItemGi span="24 s:12 m:6" label="#(col.comment)" path="#(col.name)" class="pr-24px">
              <NInput v-model:value="#(formModel).#(col.name)" placeholder="#(col.comment)" />
            </NFormItemGi>
    #default
    #end
#end